<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>用函数做数组</title>
</head>
<body>
    <script>
        /* 
         函数完成下面习题：
             [2, 6, 6, 1, 77, 52, 25, 7 ,7]
             1. 数组的最大值
             2. 数组的求和，平均数
             3. 筛选数组中大于 10 的元素放入新的数组
             4. 删除数组中的奇数
             5. 翻转元素，放入新的数组
             6. 数组的去重,形成新的数组
             7. 数组转换为字符串
             8. 判断闰年
             9. 数组的排序
    */
    //  1. 数组的最大值
    let arr = [2, 6, 6, 1, 77, 52, 25, 7, 7];
        let max = arr[0];    //假设最大值是数组中的任意一项，一般写arr[0]。
        for (let i = 0; i < arr.length; i++) {
            if (max < arr[i]) {
                max = arr[i];
            }
        }
        console.log(max);
        // 用函数写
        function Getmax(arr1) {    //形参   arr  null
            let max = arr1[0];    //假设最大值是数组中的任意一项，一般写arr[0]。
            for (let i = 0; i < arr1.length; i++) {
                if (max < arr1[i]) {
                    max = arr1[i];
                }
            }
            console.log(max);
        }
        Getmax(arr);    //实参

        //  2. 数组的求和，平均数
        console.log('-----2. 数组的求和，平均数-----');
        console.log('--------');
        let arr5 = [2, 6, 6, 1, 77, 52, 25, 7, 7];
        function getSum(arr2) {    //有参函数
            let sum = 0;
            for (let i = 0; i < arr2.length; i++) {
                sum = sum + arr2[i];
            }
            console.log(sum, sum / arr2.length);
        }
        getSum(arr5);  //aar3
        var arr3 = [4, 4, 1, 4];
        getSum(arr3);

        //   3. 筛选数组中大于 10 的元素放入新的数组 
        console.log('----3. 筛选数组中大于 10 的元素放入新的数组-----');
        let arr8 = [2, 6, 6, 1, 77, 52, 25, 7, 7];
        function newArr_(arr6) {
            let newArr = [];
            for (i = 0; i < arr6.length; i++) {
                if (arr6[i] > 10) {
                    newArr[newArr.length] = arr6[i];   //新数组的赋值方法：索引号就是数组的长度
                }
            }
            console.log(newArr);
        }
        newArr_(arr8);
    /* 
    4. 删除数组中的奇数
    let arr4_ = [2, 6, 6, 1, 77, 52, 25, 7 ,7];
    function delArr(arr4){
        let newArr4 = [];
        for(let i = 0; i<arr4.length; i++){
            if(arr4[i] % 2 == 0){
                newArr4[newArr4.length] = arr4[i];
            }
        }
        console.log(newArr4);
    }
    delArr(arr4_);
 */


    /* 
    5. 翻转元素，放入新的数组
    [2, 6, 6, 1, 77, 52, 25, 7 ,7]  _____  [7,7,25,52,77,1,6,6,2]
    */
   var arr_=[2, 6, 6, 1, 77, 52, 25, 7 ,7];
   /* var newarr=arr.reverse();
   console.log(newarr); */
   function getnewArr(arr){
    var newarr=[];
    var count=arr.length-1;
    for(var i=0;i<arr.length;i++){
        newarr[count]=arr[i];
        count--;
   }
   console.log(newarr);
   }
   getnewArr(arr_);

   //6. 数组的去重,形成新的数组
   let arr6 = [2, 6, 6, 1, 77, 52, 25, 7 ,7];
   let newArr6 = [];
   for(let i = 0; i<arr6.length; i++){
       let isCommon = false;
    //    console.log(arr6[i],isCommon);
       for(let j = 0; j<newArr6.length; j++){
            if(arr6[i] == newArr6[j]){
                isCommon = true;
            }
       }
       if(!isCommon){
           newArr6[newArr6.length] = arr6[i];
       }
    //    console.log(arr6[i],isCommon);
   }
   console.log(newArr6);

   /* 
   !   取反符号
   */

   console.log('------7. 数组转换为字符串-----');
   let arr7 = [2, 6, 6, 1, 77, 52, 25, 7 ,7];
   let str = '[';
   for(let i = 0; i<arr7.length; i++){
       if(i==arr7.length-1){
            str = str + '\'' + arr7[i] + '\'';
       }else{
            str = str + '\'' + arr7[i] + '\''+','+' ';
       }
       
   }
   str = str +']';
   console.log(str);

   console.log('-----8. 判断闰年------');
   /* 
   “普通闰年：公历年份是4的倍数，且不是100的倍数的，为闰年（如2004年、2020年等就是闰年）。世纪闰年：公历年份是整百数的，必须是400的倍数才是闰年（如1900年不是闰年，2000年是闰年）。
   */
    var year = +prompt('请输入年份');
    if(year%4==0 && year%100!=0  ||  year%400==0){
        alert(year + '是闰年');
    }else{
        alert(year + '是平年');
    }

    console.log('----9. 数组的排序-----');
    let arr0 = [2, 6, 6, 1, 77, 52, 25, 7 ,7];
    for(var i=0;i<arr0.length-1;i++){
        for(var j=0;j<arr0.length-1-i;j++){
            //交换数据
            if(arr0[j]>arr0[j+1]){
                var tep=arr0[j];
                arr0[j]=arr0[j+1];
                arr0[j+1]=tep;
            }
        }
    }
    console.log(arr0);
    </script>
</body>
</html>